#ifndef FASTACLUSTERGENERATOR_H
#define FASTACLUSTERGENERATOR_H

#include <QObject>
#include <QString>
#include <QDebug>
#include <QProcess>
#include <QApplication>

class FastaClusterGenerator : public QObject
{
    Q_OBJECT
public:
    explicit FastaClusterGenerator( QString fastaFile, QObject *parent = 0);

signals:
    void trackProgress(int stepsComplete);
    void finished();
    void error( QString err );
    void clusterFileGeneratedSignal( QString outputClusterFileName );

public slots:
    void process();

private:
    QString fastaFile;
    QProcess* cdHit;

    bool readFastaOutputCdHitCluster( QString inputFastaFile, QString outputClusterFile );

};

#endif // FASTACLUSTERGENERATOR_H
